object-oriented programming in C